Method for marking packets of a data transmission flow and marker device performing this method

ABSTRACT

In a method for marking data packets of a data transmission flow pertaining to an end-to-end connection within a packet network, the priority value is calculated based on at least one service quality parameter attributed to the data transmission flow, and upon a network feedback parameter indicative of the state of congestion within the packet network. A marker device adapted for performing the subject method, is described as well.

[0001] The present invention relates to a method for marking packets ofa data transmission flow pertaining to an end-to-end connection as isfurther described in the preamble of claim 1, and to a marker device forperforming said method as is described in the preamble of claim 9.

[0002] Such a method and a marker device are already known in the art,e.g. from “RFC 2697 of the IETF Network working group”. Therein, asingle rate three color marker is presented which marks packets of atraffic stream to be either green, yellow or red. These three colormarking values can be considered as priorities. These priorities arebased upon three traffic parameters which correspond to service qualityparameters of the traffic stream under consideration.

[0003] In the Internet, which is an example of a packet network, such amethod and marker device, in conjunction with a drop mechanism in therouters based on the priorities of the data packets, and in conjunctionwith the intrinsic properties of the TCP/IP protocol, allow fordifferentiation of several traffic flows based on their service qualityand/or traffic parameters. These service quality parameters aregenerally agreed between the user and the Internet Service Provider,hereafter abbreviated with ISP, before the actual transmission of datatakes place. The combination of all three mechanisms results in adifferentiation of the reduction of the rate of the respective trafficflows in accordance to their respective priorities, in case ofcongestion within the Internet. Since these priorities are determinedbased on the service quality parameters, service level differentiationis thus obtained.

[0004] However, in case of serious congestion problems within theInternet, this mechanism can loose its efficiency. Indeed, it is nearlyimpossible for any service provider to foresee congestion within theInternet itself, such that the negociated traffic or service qualityparameters can still be an overestimation of what the network inside isreally capable of. This results in all TCP connections of this serviceprovider to be congested. The result of the mechanism will be that allTCP sources will end up with sending high priority packets, which, ofcourse, does no longer correspond to service differentiation anymore.

[0005] An object of the present invention is therefore to provide amarker mechanism and a marker device of the above known type but whichallow for service differentiation even in case of severe congestionproblems within the Internet.

[0006] According to the invention, this object is achieved due to thefact that said method includes the steps as described in thecharacterising portion of the first claim and that said marker device isfurther adapted as is described in the characterising portion of claim9.

[0007] In this way, since the priorities are now directly dependent uponan network feedback parameter indicative of the status of the congestionin the network, a direct instead of an indirect influence of thecongestion upon the priorities is obtained. This is of course much moreefficient.

[0008] Claims 2 and 3 as well as 10 and 11 state that these networkfeedback parameters can concern both congestion on the end-to-endconnections themselves, for instance by means of the wel-known TCPacknowledgements, or congestion within internal core routers within thenetwork, for instance based on dedicated or specific congestioninformation packets to be generated by these core routers themselves.

[0009] Another characteristic feature of the present invention isdescribed in claims 4 and 12.

[0010] By thereby further considering other parameters attributed to theend-to-end connections itself, which are thus different from the alreadymentioned and used service quality parameters as well as from thenetwork feedback parameter indicading congestion, a better level ofdifferentiation with respect to the end-to-end connections itself, isobtained. These other parameters can be negociated during the servicelevel agreement phase between the user intending to transmit datapertaining to individual TCP flows and the ISP.

[0011] Yet a further characteristic features of the present invention ismentioned in the claims 5 and 13. This is important in conjunction withclaims 6 and 14 whereby a first type of these other parametersattributed to the end-to-end connection, consists of a reduction factor,which is used for influencing the rate with which a first type of thesepriorities, for instance the highest priority, is generated. By reducingthe rate of generating the highest priority, in accordance with thecongestion information as was described in claim 1, and in accordancewith this reduction parameter attributed to the end-to-end connection, amuch faster, and differentiated reduction of the flow is obtained.Similarly, as is described in claims 7 and 15, a second type of theseother parameters attributed to the end-to-end connection, consists of anincrease parameter . This one is used for again increasing the rate ,during periods of non-congestion, with which this first type of thesepriorities, for instance the highest priority, is generated. Again adifferentiation with respect to other end-to-end connections isobtained.

[0012] Since in general end-to-end connections in the Internet areassociated to different terminals, the thus obtained marking mechanismalso allows for a differentiation with respect to the terminals, takinginto account congestion information.

[0013] As described in claims 8 and 16, the use of an agreed bandwidthvalue and an agreed burst tolerance value as service quality parameters,allow for compatibility with existing marker mechanisms such as thetoken bucket mechanism.

[0014] The invention relates as well to a terminal and to an edge routerwhich incorporate such a marker device as is described in respectiveclaims 17 and 18.

[0015] The above and other objects and features of the invention willbecome more apparent and the invention itself will be best understood byreferring to the following description of an embodiment taken inconjunction with the accompanying drawings wherein the figure representsone embodiment of a marker device MD according to the present invention.

[0016] The marker device MD of the present invention is used in packetnetworks such as the Internet, aiming for differentiated services. Withdifferentiated services is meant that several service or quality ofservice classes are supported, whereby within the IP-header of each datapacket a specific field, named the Type of Service and abbreviated withToS field, can be set to a specific value. This allows different typesof data packets or data packets belonging to a specific connection, tobe distinguished from each other so that they can be forwardeddifferently. For the standardized DiffServ model this ToS field isrenamed as DiffServ Code-Point and abbreviated with DSCP, to indicatethe quality of service requirement of the data packet. Each data packetcontains its own service parameter, which partly determines the way itshould be treated at each hop or router. The way different data packetswith different service parameters are treated at such a router or hop,is further determined by another set of bits within this DSCP field,this set representing the value of a priority. The attribution andinsertion of the priorities in the data packets is done within a markerdevice which is situated either in the data packets transmittingterminal itself, or within the routers of the data packet network. Amongthese routers one can distinguish access or edge routers and corerouters, based on their position within the Internet. Access routers arethereby directly coupled to the user terminals and situated in betweenthe user terminals and the core routers.

[0017] The present invention deals with the initial marking process ofthe data packets, which takes place either in the data transmittingterminal itself, or within the access router coupled to this datatransmitting terminal. Marking devices placed in the core routers andwhich are adapted for adapting the value of the markers of the incomingpackets, are not subject of this invention.

[0018] The values of these priorities, in conjunction with their qualityof service classes, are used within the routers to determine theso-called per-hop behaviour. These per-hop behaviours are generallyimplemented by means of buffer acceptance mechanisms, also known asactive queue management mechanisms, and schedulers, whereby packetspertaining to the several service classes, are dropped or queued on thebasis of their priority and of this quality of service, and of otherparameters related to the filling of the queue. One of these bufferacceptance mechanisms is for instance the so-called Random EarlyDetection, abbreviated with RED, algorithm . Extensive descriptions ofthis mechanism can be found in literature, for instance in the article“Random Early Detection gateways for Congestion Avoidance”, by S. Floydand V. Jacobson, IEEE/ACM transactions on Networking, V.1 N.4, August1993, p 397-413. It will however also be briefly explained in the nextparagraph, since this algorithm can for instance be used in conjunctionwith the marker device of the present invention, for obtaining servicelevel differentiation.

[0019] RED is an active queue management scheme, which tries to keep theoverall throughput high while maintaining a small average queue length.RED has four configurable parameters. There are two buffer thresholds,between which probabilistic packet drops occur. When the average queueoccupancy is below the minimum threshold, no packets are dropped. Whenthe average queue occupancy exceeds the minimum threshold, packets aredropped with an increasing probability. When the average queue sizeexceeds the maximum threshold all arriving packets are dropped. Forservice differentiation purposes, the parameters that directly controlthe average queue lengths are also used. The idea is to have n, with nminimum 2 and related to the amount of priorities used when marking thepackets, sets of thresholds, a maximum drop probability and a weigth.The differences in parameter values will then result into different dropprobabilities given an average queue length.

[0020] The marking mechanism of the present invention is used inconjunction with a drop mechanism having at least two, but in general,as much as there are priorities, different drop probability curves fordropping packets with the different priorities in queues pertaining tothe service classes.

[0021] The marker mechanism as well as the marker device of the presentinvention will now be discussed.

[0022] A marker device MD is shown in the figure. It includes a memorydenoted M for storing service quality parameter values such as an agreedbandwidth BW, an agreed burst tolerance value BT, and two parameters,denoted β, and γ, which are also attributed to the end-to-end connectionunder consideration. This end-to-end connection in the Internet consistsof a TCP connection, the corresponding TCP flow being denoted TCPF andbeing represented by the thick arrow entering the marker device andleaving it as well. All four parameters BW,BT, β, and γ were agreedbetween the user and the ISP, and can be considered as being staticparameters for the operation of the marker device for a particularend-to-end connection. They may however be updated regularly, upon whichprocess new values will be stored within M.

[0023] The TCP flow, of which several packets are indicated as darkrectangles, enters the marker device within a device denoted ME. Thelatter device is adapted to, upon arrival of a new data packet denotedDP, to give a trigger PA to another device TBM, to extract the length L,in bytes, of this data packet, and to calculate Δt being the timebetween the previous packet arrival and the current one. This value, aswell as the length of the packet L is as well delivered to the deviceTBM, whose operation will be described in a next paragraph.

[0024] The marker device MD further receives information from the packetnetwork under the form of a network feedback parameter NFB, whichcontains information related to the state of congestion within thenetwork. This parameter can be related to the state of congestion on theend-to-end connection, and as such may for instance consist of theTCP-duplicate or normal acknowledgement signal. Another example ofcongestion information within the network can consist of the ECN -bit,in case the network is ECN capable. ECN thereby is the abbreviation ofExplicit Congestion Notification, which mechanism is also described inthe current literature, for instance in the article “A proposal to addExplicit Congestion Notification (ECN) to IP”, by K.K. Ramakrishnan andS. Floyd, RFC 2481. However this network feedback parameter NFB can alsocontain information related to the status of congestion within a corerouter, generated and transmitted by this core router itself. In thelatter case several of these signals, generated by several congestedcore routers can enter the marker device.

[0025] In the next paragraphs an embodiment of the marker device will bedescribed which is adapted to receive the normal and duplicateacknowledgements of the TCP connection for each transmitted packet. Uponreceipt of one of these signals by the marker device, they are checkedfor congestion within a congestion check device CC. Dependent of theresult of this check, the output signal Cl of this congestion checkdevice will be indicative of congestion or not. This signal is an inputsignal for a token generation rate device TGR which derives from it andfrom the value of the agreed bandwidth BW, of the parameters γ and βrelated to the TCP connection under consideration, and of a previous orstarting value of a token generation rate, an updated value TGRu of thistoken generation rate. This updated value is temporarily stored in atoken generation rate memory TGRM. Upon arrival of a new networkfeedback signal NFB, Cl is updated and will trigger TGR to calculate anew value of TGRu . TGR is thus triggered or activated by the arrival ofNFB signals.

[0026] In order to distinguish between the previous value TGRp and theupdated value TGRu of the token generation rate variable used andgenerated within TGR, the old value TGRp, is denoted as a separatesignal from TGRu.

[0027] The updated value TGRu is as well requested from TGRM and used bya token bucket marker device TBM, upon arrival of a new data packet DPfrom the TCP flow TCPF. As already explained in a previous paragraph ofthis document, this arrival is triggered by a signal PA. This tokenbucked marker device generates from TGRu, from L being the length of thepacket, and from the already mentioned Δt, a priority P. This priority,or marker, is delivered back to the device ME, which inserts it in thedata packet DP, which arrival was last detected. It is to be remarkedthat this priority generation occurs at minimum the speed of the dataarrival transmission, thus buffering of packets is thereby reduced to aminimum.

[0028] In the following a possible algorithm for calculating the tokengeneration rate and the priority will be described.

[0029] The initial value of the token generation rate is set to BW.

[0030] Upon arrival of a network feedback signal, for instance a TCPacknowledgement or duplicate acknowledgement, a check is performedwithin CC to determine whether there is congestion or not. An updatedvalue of the variable Cl is thereby generated.

[0031] In case of non-congestion the updated value TGRu of the tokengeneration rate is calculated as its previous value TGRp, multiplied by(β+1), whereby β is a positive number, larger than zero. β is thereforealso named an increase factor.

[0032] In case of congestion, the updated value TGRu of the tokengeneration rate is calculated from the previous value TGRp, multipliedby γ, with γ larger than zero and smaller than one. γ is therefore alsonamed a decrease factor.

[0033] Upon arrival of a data packet DP, the PA signal triggers the TBM.An internal variable, being the token count TC, will then be updatedaccording to the following equation:

TC<--min(TC+TGRu . Δt, BT)

[0034] whereby TGRu represents the value requested by TBM from thememory TGRM.

[0035] Next TC is compared with L. In case TC is lower than L, thepriority P is set to be low. In case TC exceeds or is equal to L, thevalue of TC is reduced with L, and the priority is set to be high.

[0036] Remark that the intial value of the TC is set as BT.

[0037] The embodiment and algorithm described thus used two priorityvalues, High or Low. In order to use this marker algorithm within aservice differentiation method, the per-hop behaviour in the routersneed to be compliant to two priorities, and thus need to provide for twodifferent drop behaviours, one for each priority. The already mentioned2-RED method as well as the RIO which stands for the RED In and OUTalgorithm and which is also described in the literature can thus be usedfor this.

[0038] It is however to be noted that marker methods and marker devicesaccording to the invention exist with more than two priorities. For npriorities, the Per Hop behaviour within the routers can than forinstance consist of n-RED. It is also to be remarked that otheralgorithms and consequently other marker device embodiments existwhereby the priority generation is based purely on a network feedbackcongestion parameter, in conjunction with BW and BT.

[0039] While the principles of the invention have been described abovein connection with specific apparatus, it is to be clearly understoodthat this description is made only by way of example and not as alimitation on the scope of the invention, as defined in the appendedclaims.

1. Method for marking data packets (DP) of a data transmission flow(TCPF) pertaining to an end-to-end connection within a packet network,said method including the steps of for each subsequent one of said datapackets (DP), generating a priority (P) based on at least one servicequality parameter (BW,BT) attributed to said data transmission flow,inserting said priority (P) within said each subsequent one of said datapackets for further transmission to said packet data networkcharacterised in that said priority (P) is further generated based upona network feedback parameter (NFB) indicative of the state of congestionwithin said packet network.
 2. Method according to claim 1 characterisedin that said network feedback parameter (NFB) is related to the state ofcongestion on said end-to-end connection.
 3. Method according to claim 1characterised in that said network feedback parameter (NFB) is relatedto the state of congestion within a routing device of said network. 4.Method according to claim 1 characterised in that said priority (P) isfurther generated from at least one other parameter (β,γ) attributed tosaid end-to-end connection.
 5. Method according to claim 4 characterisedin that said priority (P) has one of a predetermined set of priorityvalues (HI,LO).
 6. Method according to claim 5 characterised in thatsaid at least one other parameter attributed to said end-to-endconnection is a reduction factor (γ) whereby the rate of generating afirst type of priority having a first predetermined value (HI) of saidset is decreased based on said reduction factor (γ).
 7. Method accordingto claim 6 characterised in that said at least one other parameterattributed to said end-to-end connection is an increase factor (β),whereby the rate of generating said first type of priority is increasedbased on said increase factor (β).
 8. Method according to claim 1characterized in that said at least one service quality parameterconsists of an agreed bandwidth value (BW) and an agreed burst tolerancevalue (BT) .
 9. Marker device (MD) adapted to generate a priority (P)and to insert said priority (P) within a data packet (DP) of a datatransmission flow (TCPF) pertaining to an end-to-end connection within apacket network, said marker device (MD) being adapted to generate saidpriority (P) based on at least one service quality parameter (BW,BT)attributed to said data transmission flow (TCPF) characterized in thatsaid marker device (MD) is further adapted to generate said priority (P)from a network feedback parameter (NFB) indicative of the state ofcongestion within said packet network.
 10. Marker device (MD) accordingto claim 9 characterised in that said network feedback parameter (NFB)is related to the state of congestion on said end-to-end connection. 11.Marker device (MD) according to claim 9 characterised in that saidnetwork feedback parameter (NFB) is related to the state of congestionwithin a routing device of said network.
 12. Marker device (MD)according to claim 9 characterised in that said marker device (MD) isfurther adapted to generate said priority (P) from at least one otherparameter (β,γ) attributed to said end-to-end connection.
 13. Markerdevice (MD) according to claim 12 characterised in that said markerdevice (MD) is further adapted to generate said priority (P) so as tohave one of a predetermined set of priority values (HI,LO).
 14. Markerdevice (MD) according to claim 13 characterised in that said at leastone other parameter attributed to said end-to-end connection is areduction factor (γ) whereby said marker device (MD) is further adaptedto decrease the rate of generating a first type of priority having afirst predetermined value (HI) of said set, based on said reductionfactor (γ).
 15. Marker device (MD) according to claim 13 characterisedin that said at least one other parameter attributed to said end-to-endconnection is an increase factor (β), whereby said marker device (MD) isfurther adapted to increase the rate of generating said first type ofpriority, based on said increase factor (β).
 16. Marker device accordingto claim 9 characterized in that said at least one service qualityparameter consists of an agreed bandwidth value (BW) and an agreed bursttolerance value (BT).
 17. Terminal coupled to a packet network andadapted to transmit data packets of a data transmission flow (TCPF)pertaining to an end-to-end connection within said packet network to atleast one other terminal coupled to said packet network, said terminalincluding a marker device (MD) adapted to generate a priority (P) and toinsert said priority within a data packet (DP) of said data transmissionflow (TCPF), said priority (P) being generated based on at least oneservice quality parameter (BW,BT) of said end-to-end connection in saidpacket network characterised in that said marker device (MD) is furtheradapted in accordance to any of the claims 9 to
 16. 18. Access routerapparatus of a packet network, said access router apparatus beingadapted to receive data packets from a terminal coupled to said accessrouter, said data packets pertaining to an end-to-end connection withinsaid packet network between said terminal and another terminal coupledto said packet network, said access router apparatus including a markerdevice (MD) adapted to generate a priority (P) and to insert saidpriority within a data packet (DP) of a data transmission flow (TCPF)pertaining to said end-to-end connection, said priority (P) beinggenerated based on at least one service quality parameter (BW,BT) ofsaid end-to-end connection in said packet network characterised in thatsaid marker device (MD) is further adapted in accordance to any of theclaims 9 to 16.